دالة SORT في Excel

دوال البحث والمراجع / دوال المصفوفة الديناميكية

الغرض من الدالة

دالة SORT هي الحل السريع والفعال لفرز أي نطاق من البيانات أو مصفوفة. بدلاً من استخدام أدوات الفرز اليدوية، تتيح لك هذه الدالة فرز بياناتك ديناميكياً، مع إمكانية تحديد ترتيب الفرز (تصاعدي أو تنازلي) والعمود الذي تريد الفرز بناءً عليه إذا كنت تتعامل مع جدول.
افتراضياً, تقوم الدالة بترتيب الصفوف, أي إذا كان لديك عمود مثلاً فإنها تعيد ترتيب صفوفه.

صيغة الدالة (Syntax)

SORT(array, [sort_index], [sort_order], [by_col])
  • array: النطاق أو المصفوفة التي ترغب في فرزها.
  • [sort_index]: (اختياري) رقم يمثل فهرس الصف أو العمود الذي تريد الفرز بناءً عليه. إذا كان النطاق عموداً واحداً، لا تحتاج لتحديده. إذا كان جدولاً، يمكنك تحديد رقم العمود (مثلاً: 1 للعمود الأول، 2 للعمود الثاني). أي يتم ترتيب صفوف الجدول (افتراضي) وفقاً للعمود المحدد.
  • [sort_order]: (اختياري) رقم يحدد ترتيب الفرز: 1 لفرز تصاعدي (من الأصغر للأكبر أو من أ إلى ي)، و-1 لفرز تنازلي (من الأكبر للأصغر أو من ي إلى أ). القيمة الافتراضية هي 1.
  • [by_col]: (اختياري) قيمة منطقية. إذا كانت TRUE، سيتم الفرز حسب العمود (اعادة ترتيب الأعمدة). وهنا إذا حددت قيمة لـ sort_index فإن هذه القيمة تعني رقم الصف الذي تريد ترتيب الأعمدة وفقاً له. إذا كانت FALSE (الافتراضي)، سيتم الفرز حسب الصف (إعادة ترتيب الصفوف).
    تكون sort_index افتراضيا 1 وتمثل رقم العمود إذا كانت by_cal ذات قيمة FALSE افتراضية.
    تكون sort_index افتراضيا 1 وتمثل رقم الصف إذا كانت by_cal ذات قيمة TRUE.

أمثلة عملية

المثال 1: فرز الأرقام تصاعدياً

لدينا قائمة من الأرقام العشوائية في العمود A ونريد ترتيبها من الأصغر إلى الأكبر.

AB
1البياناتالنتيجة
221
38
41

الصيغة المستخدمة:

=SORT(A2:A4)

توضيح:

الدالة قامت بفرز الأرقام في النطاق A2:A4 تصاعدياً (الترتيب الافتراضي).

وبشكل أدق يمكننا القول إن الدالة قامت بترتيب الصفوف (الترتيب الافتراضي للصفوف لأن by_colافتراضياً هو FALSE)

المثال 2: ترتيب صفوف مصفوفة تنازلياً وفقاً للعمود 1.

الترتيب الافتراضي هو للصفوف. فلا حاجة لتعديل قيمة by_col.
الترتيب تنازلي, بالتالي [sort_order] = -1
الفرز وفقاً للعمود الأول, لذا تكون قيمة [sort_index] = 1 وهي افتراضياً = 1 لذا نتركها بدون قيمة.

ABCDEFG
1البياناتالنتيجة
21110311
3567
49201

الصيغة المستخدمة:

=SORT(A2:C4, , -1)

توضيح:

تقوم الدالة بترتيب صفوف المصفوفة وفقاً لترتيب العمود الأول تنازلياً.

لو أردنا القيام بنفس المهمة السابقة ولكن الترتيب أن يكون وفقاً للعمود 3, تكون الدالة وفقاً للصيغة =SORT(A2:C4, 3, -1). وتكون النتيجة:

567
11103
9201

المثال 3: ترتيب أعمدة مصفوفة تنازلياً وفقاً للصف 1.

الترتيب الافتراضي هو للصفوف. لذا لنقوم بترتيب الأعمدة نجعل by_col = TRUE.
الترتيب تنازلي, بالتالي [sort_order] = -1
الفرز وفقاً للصف الأول, لذا تكون قيمة [sort_index] = 1 وهي افتراضياً = 1 لذا نتركها بدون قيمة.

ABCDEFG
1البياناتالنتيجة
21110311
3567
49201

الصيغة المستخدمة:

=SORT(A2:C4, , -1, TRUE)

توضيح:

تقوم الدالة بترتيب أعمدة المصفوفة وفقاً لترتيب الصف الأول تنازلياً. وبما ان الصف الأول هو مرتب تنازياً بالأساس فلن تقوم الدالة بفعل شيء.

لو أردنا القيام بنفس المهمة السابقة ولكن الترتيب أن يكون وفقاً للصف 2, تكون الدالة وفقاً للصيغة =SORT(A2:C4, 2, -1, TRUE). وتكون النتيجة:

31011
765
1209